#include "pool.hpp"
#include <iostream>
#include <cstdlib>
#include <ctime>

int main()
{
    //srand(time(NULL));
    
    ProcessPool pl;

    pl.Register(&PrintLog);
    pl.Register(DownLoad);
    pl.Register(UpLoad);

    pl.create();

    // pl.debug();

    // std::cout << "over" << std::endl;

    // srand (time(NULL));
    //  int i = 5;
    //  while(i--)
    //  {
    //      int task = rand() % 10;
    //      pl.parent_task(task);

    // }

    // std::cout << "你好" << std::endl;
    //  sleep(1);
    //  pl.Close();
    //  pl.Wait();

    // 不行，此时再添加只在父进程添加，子进程看不到
    //  pl.Register(&PrintLog);
    //  pl.Register(DownLoad);
    //  pl.Register(UpLoad);



    int n = 10;
    while (n--)
        pl.parent_task();

    pl.Stop();

    return 0;
}